To invoke the APIs, a developer needs to download Test Data by registering and logging into the BOI Developer Portal. This Test Data will provide the required PSU/Customer Account details required to invoke the APIs.
This sections provides Sandbox Mocking Information related to API requests and responses.
1.1. Domestic Payment Consents & Domestic Scheduled Payment Consents
Validations | Description/Response |
AmountValidation | If Amount is of the form 100xx consent status is Rejected |
CurrencyValidation | Allowed Currencies are EUR, GBP else consent status is Rejected |
POST API Validation | If Amount is of the form 800xx, API will return 500, Internal Server Error |
GET API Validation | If Amount is of the form 700xx, Consent will be created but on fetching status user will get Internal Server Error |
SecondaryIdentification Validation | If SecondaryIdentification of CreditorAccount provided in the request is of the form 333xx, API will return 400 Bad Request with UK.OBIE.Unsupported.AccountSecondaryIdentifier error |
1.2. Domestic Payment & International Payment – Confirmation of Funds API
Validations | Description/Response |
AmountValidation | If Amount is of the form 200xx then fundsAvailable flag in response is false else true |
AdditionalValidation | If Amount is of the form 600xx API returns 500, Internal Server Error |
1.3. Domestic Standing Order Consents API
Validations | Description/Response |
AmountValidation | If FirstPaymentAmount value is of the form 100xx consent status is Rejected |
CurrencyValidation | Allowed Currencies are EUR, GBP else consent status is Rejected |
POST API Validation | If FirstPaymentAmount value is of the form 800xx, API will return 500, Internal Server Error |
GET API Validation | If FirstPaymentAmount value is of the form 700xx, Consent will be created but on fetching status user will get Internal Server Error |
SecondaryIdentification Validation | If SecondaryIdentification of CreditorAccount provided in the request is of the form 333xx, API will return 400 Bad Request with UK.OBIE.Unsupported.AccountSecondaryIdentifier error |
1.4. Domestic Payments API
Validations | Description/Response |
AmountValidation | If Amount is of the form 200xx, payment status is Rejected |
If Amount is of the form 300xx, MultiAuth status is Authorised and Payment status is AcceptedSettlementInProcess |
MultiAuthValidation | If Amount is of the form 400xx, MultiAuth status is AwaitingFurtherAuthorisationand Payment Status is Pending |
If Amount is of the form 500xx, MultiAuth status is Rejected and Payment Status is Rejected |
POST API Validation | If Amount is of the form 600xx, API will return 500, Internal Server Error |
GET API Validation | If Amount is of the form 700xx, payments resource will be created but on fetching status user will get Internal Server Error |
AfterCutOffDateException | If Amount is of the form 900xx, API will return 400 Bad Request with UK.OBIE.Rules.AfterCutOffDateTime error |
1.5. Domestic Scheduled Payments API
Validations | Description/Response |
AmountValidation | If Amount is of the form 200xx, payment status is InitiationFailed |
If Amount is of the form 300xx, MultiAuth status is Authorised and Payment status is InitiationCompleted |
If Amount is of the form 400xx, MultiAuth status is AwaitingFurtherAuthorisation and Payment Status is InitiationPending |
MultiAuthValidation | If Amount is of the form 500xx, MultiAuth status is Rejected and Payment Status is InitiationFailed |
If Amount is of the form 8500xx, MultiAuth status is AwaitingFurtherAuthorisation and Payment Status is InitiationFailed |
If Amount is of the form 950xx, MultiAuth status is Authorised and Payment Status is Cancelled. |
POST API Validation | If Amount is of the form 600xx, API will return 500, Internal Server Error |
GET API Validation | If Amount is of the form 700xx, payments resource will be created but on fetching status user will get Internal Server Error |
1.6. Domestic Standing Orders API
Validations | Description/Response |
AmountValidation | If FirstPaymentAmount value is of the form 200xx, payment status is InitiationFailed |
If FirstPaymentAmount value is of the form 300xx, MultiAuth status is Authorised and Payment status is InitiationCompleted |
MultiAuthValidation | If FirstPaymentAmount value is of the form 400xx, MultiAuth status is AwaitingFurtherAuthorisation and Payment Status is IntitiationPending |
if FirstPaymentAmount value is of the form 500xx, MultiAuth status is Rejected and Payment Status is InitiationFailed |
POST API Validation | If FirstPaymentAmount value is of the form 600xx, API will return 500, Internal Server Error |
GET API Validation | If FirstPaymentAmount value is of the form 700xx, payments resource will be created but on fetching status user will get Internal Server Error |
AfterCutOffDateException | If FirstPaymentAmount value is of the form 900xx, API will return 400 Bad Request with UK.OBIE.Rules.AfterCutOffDateTime error |
2.1. International Payment Consents & International Scheduled Payment Consents API
Validations | Description/Response |
AmountValidation | If Amount is of the form 100xx consent status is Rejected |
Purpose | Acceptable values for Purpose field are “BKDF” and “BKFE”, if not than consent rejected with 201 created. |
POST API Validation | If Amount is of the form 800xx, API will return 500, Internal Server Error |
GET API Validation | If Amount is of the form 700xx, Consent will be created but on fetching status user will get Internal Server Error |
ExchangeRateInformation Validations | ExpirationDateTime in the ExchangeRateInformation response block for RateType Actual is mocked to 5 minutes after consent authorisation by PSU. |
If the RateType is specified as Actual/Indicative, then ExchangeRate and ContractIdentification field are not supported in the request payload, if provided API will return 400 Bad Request. |
If the RateType is specified as Agreed, then ExchangeRate and ContractIdentification field must be provided in the request payload. |
The ExchangeRate value provided in the response payload with RateType as Actual/Indicative are: EUR = 1.2 and USD = 1.5 |
2.2. International Payments API
Validations | Description/Response |
AmountValidation | If Amount is of the form 200xx payments status is Rejected |
If Amount is of the form 300xx, MultiAuth status is Authorised and Payment Status is AcceptedSettlementInProcess |
MultiAuthValidation | If Amount is of the form 400xx, MultiAuth status is AwaitingFurtherAuthorisation and Payment Status is Pending |
If Amount is of the form 500xx, MultiAuth status is Rejected and Payment Status is Rejected |
Charges | In case of SWIFT with ChargeBearer value as Shared, API will return Charge Amount as 15 GBP and Type will UK.OBIE.INTERNATIONALPAYMENTOUT (applicable for B365 Channel) |
POST API Validation | If Amount is of the form 600xx, API will return 500, Internal Server Error |
GET API Validation | If Amount is of the form 700xx, payments resource will be created but on fetching status user will get Internal Server Error |
AfterCutOffDateException | If Amount is of the form 900xx, API will return 400 Bad Request with UK.OBIE.Rules.AfterCutOffDateTime error |
IBIS Account Validation (BOL Channel) | For a preselected IBIS Account with unit currency as INR, If LocalInstrumnet is SEPA and Rate Type Indicative, DebtorIdentification is IBIS NSC, then consent status must be rejected. |
BKK Account Validation (BOL Channel) | If LocalInstrument is SEPA and Currency of transfer and InstructedCurrency is USD, Country US, Consent status must be Rejected |
BKK Account Validation (B365 Channel) | If LocalInstrument is SWIFT and Currency of transfer and InstructedCurrency is EUR, Country Germany, Consent status must be Rejected |
BKK Account Validation (B365 Channel) | If LocalInstrument is SEPA and Currency of transfer and InstructedCurrency is USD, Country US, Consent status must be Rejected. |
2.3. International Scheduled Payments API
Validations | Description/Response |
AmountValidation | If Amount is of the form 200xx payments status is InitiationFailed |
If Amount is of the form 300xx MultiAuth status is Authorised and payment status is InitiationCompleted |
MultiAuthValidation | If Amount is of the form 400xx, MultiAuth status is AwaitingFurtherAuthorisation and Payment Status is IntitiationPending |
If Amount is of the form 500xx. MultiAuth status is Rejected and Payment Status is InitiationFailed |
POST API Validation | If Amount is of the form 600xx, API will return 500, Internal Server Error |
GET API Validation | If Amount is of the form 700xx, payments resource will be created but on fetching status user will get Internal Server Error |
3.1. File Payment Consents API
Validations | Description/Response |
AmountValidation | If ControlSum is of the form 100xx consent status is Rejected |
POST API Validation | If ControlSum is of the form 800xx, API will return 500, Internal Server Error |
GET API Validations | If ControlSum is of the form 700xx, Consent will be created but on fetching status user will get Internal Server Error Uploaded file can only be fetched for a period of 90 days since upload |
3.2. File Payments API
Validations | Description/Response |
AmountValidation | If ControlSum is of the form 200xx payments status is InitiationFailed |
If ControlSum is of the form 300xx, MultiAuth status is Authorised and Payment status is InitiationCompleted |
MultiAuthValidation | If ControlSum is of the form 400xx, MultiAuth status is AwaitingFurtherAuthorisation and Payment status is InitiationPending |
If ControlSum is of the form 500xx, MultiAuth status is Rejected and Payment status is InitiationFailed |
POST API Validation | If ControlSum is of the form 600xx, API will return 500, Internal Server Error |
GET API Validation | If ControlSum is of the form 700xx, file resource will be created but on fetching status user will get Internal Server Error |
AfterCutOffDateException | If ControlSum is of the form 900xx, API will return 400 Bad Request with UK.OBIE.Rules.AfterCutOffDateTime error |